package com.richbond.sdjdsm.fragments;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;

import com.idcard.TFieldID;
import com.idcard.TParam;
import com.idcard.TRECAPIImpl;
import com.idcard.TStatus;
import com.idcard.TengineID;

public class OCRFORPATH {
	void OCRFORPATH(String path)
	{
		TRECAPIImpl trecapiImpl = new TRECAPIImpl();
		TStatus tStatus = TStatus.TR_FAIL;
		// ������
		tStatus = trecapiImpl.TR_StartUP();
		if (tStatus == TStatus.TR_TIME_OUT) {
			System.out.print("�������\n");
			return;
		}
		
		// �����������
		tStatus = trecapiImpl.TR_SetParam(TParam.T_SET_HEADIMG, 1);// ����ͷ����
		tStatus = trecapiImpl.TR_SetSupportEngine(TengineID.TIDCARD2);// ���������ͣ������������֤�� ����֤���Դ�����
		if (tStatus != TStatus.TR_OK) {
			System.out.print("���治֧��\n");
			return;
		}
		// ����ͼƬ������
		tStatus = trecapiImpl.TR_LoadImage(path);
		if (tStatus != TStatus.TR_OK) {
			System.out.print("�������ͼƬʧ��\n");
			return;
		}
		// ����ʶ��
		tStatus = trecapiImpl.TR_RECOCR();
		// �ͷ�ͼƬ�ڴ�
		trecapiImpl.TR_FreeImage();// �м���ͼƬ�����ͷ�ͼƬ�ڴ�
		// ��ȡʶ����
		String allinfo = trecapiImpl.TR_GetOCRStringBuf(); // ��ȡ����ʶ����Ϣ
		String name = trecapiImpl.TR_GetOCRFieldStringBuf(TFieldID.NAME);// ��ݶ�Ӧ���ֶλ�ȡ������Ŀ��Ϣ�� ��ȡ������Ϣ�� �Դ�����
		System.out.print("name ----\n" +name +"\n");
		// ֻ����ʶ�����֤����ʱ�� �ſ��Ի�ȡ��ͷ����Ϣ
		byte []hdata = trecapiImpl.TR_GetHeadImgBuf();
		int size =  trecapiImpl.TR_GetHeadImgBufSize();
		if (size > 0 && hdata != null && hdata.length > 0) {
			Bitmap HeadImgBitmap = BitmapFactory.decodeByteArray(hdata,0,size);
		}
		// �ͷ���������ڴ�
		trecapiImpl.TR_ClearUP();
				
	}
}
